﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Demo
{
    class Program1
    {
        /*一、编写一个控制台应用程序，接受用户输入的两个整数和一个操作符，以实现对两个整数的加、减、乘、除运算，并显示出计算结果。

        1、创建Calculate积累，其中包含两个整型的protected成员，用以接收用户输入的两个整数。定义一个DisplayResult()虚方法，计算并输出结果。
        2、定义四个类继承自Calculate类，分别重写DisplayResult()方法，实现两个整数的加、减、乘、除运算，并输出结果。
        3、根据用户输入的操作符，实例化相应的类，完成运算并输出结果。
        4、在主类中添加一个方法，形参为父类对象，根据传递实参的类型，调用方法，实现计算和显示结果。*/
        static void Main(string[] args)
        {
            Console.WriteLine("请输入一个数作为第一个整数:");
            double a = double.Parse(Console.ReadLine());
            Console.WriteLine("请输入一个数作为第二个整数:");
            double b = double.Parse(Console.ReadLine());
            Console.WriteLine("输入的整数A为{0}", a);
            Console.WriteLine("输入的整数B为{0}", b);
            Console.WriteLine("加法选择请输入'+'号  减法选择请输入'-'号  乘法选择请输入'*'号  除法选择请输入'/'号");
            string c = Console.ReadLine();
            if (c == "+")
            {
                Console.WriteLine("******************");
                Console.WriteLine("****加法****");
                Add add = new Add();
                add.first = a;
                add.second = b;
                add.add();
                add.DisplayResult();
            }
            else if (c == "-")
            {
                Console.WriteLine("******************");
                Console.WriteLine("****减法****");
                Subtract subtract = new Subtract();
                subtract.first = a;
                subtract.second = b;
                subtract.subtract();
                subtract.DisplayResult();
            }
            else if (c == "*")
            {
                Console.WriteLine("******************");
                Console.WriteLine("****乘法****");
                Multiplication multiplication = new Multiplication();
                multiplication.first = a;
                multiplication.second = b;
                multiplication.multiplication();
                multiplication.DisplayResult();
            }
            else if (c == "/")
            {
                Console.WriteLine("******************");
                Console.WriteLine("****除法****");
                Division division = new Division();
                division.first = a;
                division.second = b;
                division.division();
                division.DisplayResult();
            }
            Console.ReadKey();
        }
    }
}